나는 현재 법률 분야에 특화된 vertical AI agent를 개발 중이다. 좀 더 구체적으로는, 민사소송에서 원고를 대리하는 변호사가 송무를 진행하는 데 도움을 주는 수직형 법률 인공지능 에이전트(vertical AI legal Agent)를 개발하고 있다. 이 에이전트는 여러 단계(multiple stages)에 걸쳐 작업을 진행하며, 사용자가 고객 상담 문서와 증거 문서를 업로드하면 그것을 바탕으로 사건의 개요를 파악하고, 원고가 주장할 수 있는 청구권을 식별하며, 청구 방식을 결정하고, 청구취지와 요건사실을 작성하며, (optional) 과거 판례까지 검색하여, 최종적으로 소장(complaint)을 작성한다.

Stage 1에서 에이전트는 사용자가 업로드한 고객 상담 문서(client_meeting.md)와 증거문서(evidence_all.json)을 사용하여 사건의 개요를 파악한다.

Stage 2에서 에이전트는 Stage 1 결과물을 사용하여 원고가 주장할 청구권과 청구취지 그리고 청구원인을 식별한다. 

Stage 3에서 에이전트는 청구권/청구취지/청구원인에 대한 요건사실을 식별하고 피고의 예상항변과 그에 대한 반박을 도출한다. 

이제 Stage 4에서 에이전트는 `청구권/청구취지/청구원인` 조합을 법리적으로 가장 잘 뒷받침(support)할 수 있는 과거 판례(cases)를 검색하고 그 내용들을 요약하여 문서로 작성하는 작업을 실행한다. 과거 판례들은 외부 DB(Weaviate DB)에 저장되어 있다. 

폴더의 `판례검색_쿼리생성_리서치.txt`는 쿼리 생성을 위한 조직적 프롬프트를 작성하기 위한 요구사항(<요구사항>)을 제시한다. 

1. <요구사항>의 모든 내용을 빠짐없이 반영하고, 
2. 아래 추가정보에 입각하여,
3. Weaviate DB 검색에 최적화 되도록 하고,
4. LLM이 정확하게 이해해서 최고 수준에서 효율적으로 작업을 수행할 수 있도록,
프롬프트를 작성하라. 작성한 프롬프트는 `Prompt_stage_3_task_1_query_v1.txt`로 생성하라. 

# 추가정보
- input source `C-###_info_D_R.json`은 `DR_info_v2` 폴더에 저장되어 있다. 
- 폴더 내에 `Keywords_Criteria.txt` 파일이 존재한다. 
- 프롬프트 작성 시 `Keywords_Criteria.txt` 파일은 **Default_Agent 폴더 내에 존재한다**고 가정하라. 

-----------------------------------------------------------------------------------------

------------------------------------------
|  프롬프트 최적화 - Gemini 3.1 Pro 사용 전제  |
------------------------------------------

나는 현재 법률 분야에 특화된 vertical AI agent를 개발 중이다. 좀 더 구체적으로는, 민사소송에서 원고를 대리하는 변호사가 송무를 진행하는 데 도움을 주는 수직형 법률 인공지능 에이전트(vertical AI legal Agent)를 개발하고 있다. 이 에이전트는 여러 단계(multiple stages)에 걸쳐 작업을 진행하며, 사용자가 고객 상담 문서와 증거 문서를 업로드하면 그것을 바탕으로 사건의 개요를 파악하고, 원고가 주장할 수 있는 청구권을 식별하며, 청구 방식을 결정하고, 청구취지와 요건사실을 작성하며, (optional) 과거 판례까지 검색하여, 최종적으로 소장(complaint)을 작성한다.

Stage 1에서 에이전트는 사용자가 업로드한 고객 상담 문서(client_meeting.md)와 증거문서(evidence_all.json)을 사용하여 사건의 개요를 파악한다.

Stage 2에서 에이전트는 Stage 1 결과물을 사용하여 원고가 주장할 청구권과 청구취지 그리고 청구원인을 식별한다. 

Stage 3에서 에이전트는 청구권/청구취지/청구원인에 대한 요건사실을 식별하고 피고의 예상항변과 그에 대한 반박을 도출한다. 

이제 Stage 4에서 에이전트는 `청구권/청구취지/청구원인` 조합을 법리적으로 가장 잘 뒷받침(support)할 수 있는 과거 판례(cases)를 검색하고 그 내용들을 요약하여 문서로 작성하는 작업을 실행한다. 과거 판례들은 외부 DB(Weaviate DB)에 저장되어 있다. 

첨부파일 `Prompt_stage_3_task_1_query_v1_edited.txt`는 쿼리 생성을 위한 `프롬프트`이다. 

이 프롬프트를 gemini-3.1-pro-preview (reasoning=medium, verbosity=medium) 모델을 사용하여 실행했을 때 최고의 결과물을 도출할 수 있도록 프롬프트를 재작성하라. 프롬프트 작성 시 아래의 정보와 가정, 그리고 요구사항을 준수하라. 

<정보>
- C-003_info_D_R.json
- C-006_info_D_R.json
- C-009_info_D_R.json
3 파일은 프롬프트 입력으로 사용되는 예시 파일들이다. 
</정보>

<가정>
- Keywords_Criteria.txt
- Mapping_Rule_Case_DB.txt
2 파일은 에이전트 작업 시 "Default_Agent" 폴더에 존재하는 것으로 가정한다. 
</가정>

<요구사항>
- 프롬프트 작성 시, Prompt_stage_3_task_1_query_v1_edited.txt가 제시하는 구체적인 작업내용을 모두 정확하게 동일하게 수행할 수 있도록 한다. 
- gemini-3.1-pro-preview 모델이 자의적으로 판단하여 작업을 수행하지 않도록 한다. 
</요구사항>

-----------------------------------------------------------------------------------------

----------------
|  Validation  |
----------------

지금 제시한 최적화 프롬프트가 기존 프롬프트의 작업 지시사항을 모두 정확히 그대로 준수하여 실행하도록 작성되었는지 엄격하게 독립적으로 검증하라. 

그리고, 지금 작성한 프롬프트가 
1. 목적 달성 정도
2. 토큰 경제성
3. LLM 작업 속도
의 3가지 기준에서 각각 10점 만점에 9.8점 이상 달성할 수 있는지 엄격하게 평가하라. 

평가 후, 개선할 사항이 있다면 함께 제시하라. 


-----------------------------------------------------------------------------------------






외부 DB mapping rule은 










| case_kind_normalized | Collection | Tenant |
|---------------------|------------|--------|
| 사해행위취소 | Analyzed_Cases | Cases_Actio_Pauliana |
| 대여금 | Past_Cases | Cases_Loan_Claim |
| 보증 | Past_Cases | Cases_Guarantee_Claim |
| 구상 | Past_Cases | Cases_Indemnity_Claim |

